-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interactive disk detection #16
base: dev
Are you sure you want to change the base?
Conversation
Geri, this is incredible. I'll take a look at this in detail and do a full review in the future, but some initial feedback:
I am also currently working on adding similar advanced features to the GUI and so we will have to consider a pattern that makes these things play nicely together. By the way, in the old incarnation of the GUI we had a similar interactive strain workflow (see here), which we never ported over when we removed the GUI from the main py4DSTEM repository. This may serve as some inspiration for the layout and for some of the Qt possibilities. So overall I would say this is going to be a great addition, and I look forward to seeing how this progresses, but beware that some of the structure of the code will probably change a lot in order to keep things modular as I envision multiple similar analysis features being included in the GUI in the near future. |
Hi Steve, thanks! The feedback makes sense. Having a quick look at the previous version of the GUI you linked, it seemed to already have so many features! If I may ask, why didn't these make it through to the current version of the GUI? I'll have a deeper look at the framework of the earlier version and base any future work on this PR off of that arrangement (or similar). My goal when I started out on this was to basically get to a point where you could do strain mapping interactively just like the previous version, but if this is already in the works, I don't want to re-invent the wheel. Is you/any other dev working on these features currently? |
Essentially it was not ported over for two reasons: first, the GUI had become overly complicated under the hood and one of the goals of the rewrite was to make sure the core functionality was cohesive and stable, so all the extra features of the old GUI were thrown away in favor of a clean core; second, the strain mapping workflow in py4DSTEM had changed quite a lot so it would have had to be largely rewritten. Don't feel bound too closely by what the old GUI did, it was far from perfect. At the moment I don't think anyone else is working on adding strain to the GUI, so feel free to take charge of this addition. We welcome the help! |
Would say this is definitely still work in progress, but I added an additional tab to run disk detection interactively using the browser. You can go through the same steps of generating a probe template on the current real space ROI position, generating the kernel for cross-correlation, then through a separate window, disk detection parameters can be edited. Once happy, the user can use the latch button "Enable/disable disk detection" and circle ROIs will be placed on the detected disk positions as the user moves the real space ROI:
I am not very familiar with PyQt5, so maybe there are better ways of doing things than what I've come up with, so any input would be great!